/* HOME STYLINGS */
#home-purple {
  position: absolute;
  left: 0;
  top: -400px;
}

#home-green {
  position: absolute;
  right: -3px;
  top: 60px;
}

.sidelinks {
  &:hover {
    color: $blue-purple-400;
  }

  &.active {
    color: $blue-purple-400;
    font-weight: bold;
  }
}

.page-home {
  #home-hero-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: 54.8%;
    overflow: hidden;
  }

  #home-hero-graphic {
    width: 100%;
    max-width: 856px;
    height: auto;
    object-fit: cover;
    content: url("../img/home-hero.svg");
    margin-bottom: 24px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    
    @media (min-width: 992px) {
      min-height: 470px;
    }

    @media (max-width: 991px) and (min-width: 540px) {
      min-height: 250px;
    }

    @media (max-width: 539px) {
      min-height: 170px;
    }
  }

  #benefits-list {
    @each $benefit in "public", "streamlined", "performance", "low-cost",
    "community", "reliability"

      {
      ##{$benefit} {
        content: url("../img/icons/#{$benefit}.svg");
      }
    }
  }

  #advanced-features {
    $feature-cards: [ "pink-purple", "neutral-blue", "light-green", "orange", "purple-blue-2"];

    @for $i from 1 through 5 {
      .card:nth-child(#{$i}) .card-footer {
        background-image: url("../img/cards/3col-#{nth($feature-cards, $i)}.svg");
      }
    }
  }

  #get-started {
    $gs-cards: [ "orange-yellow", "magenta-orange", "purple-blue-green",
      "light-blue", "green-blue"];

    @for $i from 1 through 5 {
      .card:nth-child(#{$i}) .card-footer {
        background-image: url("../img/cards/3col-#{nth($gs-cards, $i)}.svg");
      }
    }
  }
}

// Payments page specific embedded payments icons
#embedded-payments-list {
  #digital-wallets {
    content: url("../img/uses/payments/digital-wallet.png");
  }
  
  #cross-border-remittance {
    content: url("../img/uses/payments/cross-border.png");
  }
  
  #regulated-foreign-exchange {
    content: url("../img/uses/payments/regulated.png");
  }
  
  #merchant-settlement {
    content: url("../img/uses/payments/merchant-settlement.png");
  }
  
  #b2b-payment-rails {
    content: url("../img/uses/payments/b2b-payment.png");
  }
  
  #compliance-first-payment-acceptance {
    content: url("../img/uses/payments/compliance.png");
  }
}

.cta {
  position: absolute;

  &-top-left {
    top: 0;
    left: 0;
  }

  &-bottom-right {
    bottom: 0;
    right: 0;
  }
}

// Page backgrounds
.landing-bg {
  opacity: 0.6;

  @include media-breakpoint-up(md) {
    opacity: 1;
  }
}

.landing-builtin-bg {
  &::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    // background-image set on the page-* classes
    background-repeat: no-repeat;
    background-position-x: left;
    background-position-y: top;
    opacity: 0.6;

    @include media-breakpoint-up(md) {
      opacity: 1;
    }
  }
}

// XRP Overview Page
#xrp-overview-blue {
  position: absolute;
  top: 0;
  left: 0;
}

#xrp-mark-overview {
  @include media-breakpoint-down(sm) {
    height: 40px;
    margin-top: 16px;
  }
}

#wallets {
  @each $wallet in "ledger", "secalot", "trezor", "xumm", "trust", "gatehub", "towo", "keystone", "dcent", "coin", "gem", "joey" {
    #wallet-#{$wallet} {
      content: url("../img/wallets/#{$wallet}.svg");
    }
  }

  @each $wallet in "bitfrost", "crossmark" {
    #wallet-#{$wallet} {
      content: url("../img/wallets/#{$wallet}.png");
    }
  }
}

#top-exchanges {
  // Vector logos
  @each $exchange in "bitstamp", "kraken", "cex-io", "liquid", "lmax",
  "bitfinex", "etoro"

    {
    #exch-#{$exchange} {
      content: url("../img/exchanges/#{$exchange}.svg");
    }
  }

  // Raster logos
  @each $exchange in "bittrex", "currency-com", "ftx" {
    #exch-#{$exchange} {
      content: url("../img/exchanges/#{$exchange}.png");
    }
  }
}

// XRPL Overview Page
#xrpl-overview-purple {
  position: absolute;
  top: 40px;
  left: 0;

  @include media-breakpoint-down(sm) {
    top: 0;
    left: -20vw;
  }
}

#xrpl-overview-orange {
  position: absolute;
  top: 80px;
  right: -4px;
}

#use-cases-orange {
  position: absolute;
  top: -480px;
  right: -4px;
}

#validator-graphic {
  content: url(../img/validators.svg);
}

.page-uses {
  .container-new {
    padding-left: 16px;
    padding-right: 16px;
  }

  h1 {
    font-size: 42px;
  }

  &::before {
    transform: scaleX(-1);
    background-image: url(../img/backgrounds/use-cases-blue.svg);
  }

  .card-grid {
    grid-gap: 8px;
  }

  .card-grid img {
    max-height: 40px;
  }

  /* Cleanup bootstrap modal */
  .modal {
    padding: 0;
  }

  .modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: $black;

    background-clip: padding-box;
    border: none;
    border-radius: 0;
    box-shadow: none;
    outline: none;

    background: $gray-900;
  }

  .modal-header {
    border: none;
    background: $gray-900;
    box-shadow: 0px 1px 2px $black;
  }

  .modal-header .cancel .chevron {
    transform: rotate(90deg);
  }

  .modal-header .apply .chevron {
    transform: rotate(-90deg);
  }

  .modal-footer {
    border: none;
    background: $gray-900;
    box-shadow: 0px -1px 2px $black;

    align-items: unset;
    padding: 0.75rem;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .card-title {
    margin-bottom: 0.5rem;
    line-height: 26px;
  }

  .card-uses {
    padding: 16px;
    margin: 0;
    text-decoration: none;
    transition: all 0.35s ease-out;
  }

  .card-uses:hover {
    text-decoration: none;
    color: $gray-200;
    transform: translateY(-16px);
    text-decoration: none;
  }

  .card-body {
    background: $gray-800;
    border-radius: 8px;
    height: 100%;
    padding: 32px;
    margin: 0;
  }

  .page-events .label {
    font-weight: normal;
    font-size: 14px;
    margin: 0;
    padding-left: 26px;
  }

  .category-header {
    font-weight: bold;
    /*color: $gray-300;*/
    color: $gray-300;
  }

  .light {
    .category-checkbox label {
      color: #ffffff;
    }
  }

  .category-checkbox {
    display: flex;
    align-items: center;
  }

  .category-checkbox label {
    font-weight: normal;
    font-size: 14px;
    margin: 0;
    padding-left: 26px;
  }

  .category_count {
    margin-left: 8px;
    padding: 2px 16px;
    width: 24px;
    height: 16px;
    background: $blue-purple-800;
    border-radius: 100px;

    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    color: $blue-purple-300;
  }

  .category_sidebar {
    position: sticky;
    top: 10px;
  }

  @each $usecase in "infrastructure", "developer_tooling", "interoperability",
  "wallet", "nfts", "exchanges", "gaming", "security", "payments",
  "web_monetization", "sustainability", "cbdc", "other", "carbon_markets",
  "custody", "defi"

    {
    ##{$usecase} {
      content: url("../img/icons/usecases/ic_#{$usecase}.png");
    }
  }

  // logos for cards
  // $type incase png or jpg is needed.
  @each $company,
  $type in ("bithomp": "svg",
    "onthedex": "svg",
    "gatehub": "svg",
    "towo-labs": "svg",
    "xrp-toolkit": "svg",
    "xrpl-org-ledger-explorer": "svg",
    "xrpl-rosetta": "svg",
    "xrpscan": "svg",
    "evernode": "svg",
    "cryptum": "svg",
    "x-tokenize": "svg",
    "multichain": "svg",
    "xumm-wallet": "svg",
    "gem-wallet": "svg",
    "aesthetes": "svg",
    "audiotarky": "svg",
    "xrp-cafe": "svg",
    "nft-master": "svg",
    "onxrp": "svg",
    "peerkat": "svg",
    "sologenic-nft": "svg",
    "sologenic-dex": "svg",
    "xp-market": "svg",
    "ledger-city": "svg",
    "forte": "svg",
    "futureverse": "svg",
    'first-ledger-bot': 'svg',
    "moai-finance": "svg",
    "orchestra-finance": "svg",
    "anchain-ai": "svg",
    "coil": "svg",
    "carbonland-trust": "svg",
    "casino-coin": "svg",
    "bitgo": "svg",
    "bitpay": "svg",
    "ripples-on-demand-liquidity": "svg",
    "ripples-cbdc-platform": "svg",
    "momento": "svg",
    "zerpmon": "png",
    "joey-wallet": "svg",
    "Crossmark": "png",
    "Edge": "png"

  ) {
    #use_case_companies_list {
      ##{$company} {
        .biz-logo {
          max-height: 40px;
          content: url("../img/uses/#{$company}.#{$type}");
        }
      }
    }
  }

  .orchestra-finance {
    max-height: 52px !important;
    margin: 0 !important;
  }

  #use_case_companies_list {
    #first-ledger-bot {
      .biz-logo {
        max-height: 81px !important;
      }
    }

    #zerpmon {
      .biz-logo {
        max-height: 81px !important;
      }
    }
  }

  @include media-breakpoint-up(lg) {
    h1 {
      font-size: 62px;
    }

    .container-new {
      padding-left: 64px;
      padding-right: 64px;
    }

    .card-grid img {
      max-height: 48px;
    }

    .card-grid {
      grid-gap: 48px;
    }

    .card-uses {
      padding: 24px;
    }
  }
}

// End UseCases

// History Page
#history-orange {
  position: absolute;
  top: 0;
  right: -4px;
}

#history-purple {
  position: absolute;
  top: -480px;
  left: -4px;
}

.hidden-section {
  overflow: hidden;
  visibility: hidden;
  height: 0;

  &.show {
    overflow: auto;
    visibility: visible;
    height: auto;
  }
}

// Impact
#impact-green {
  position: absolute;
  top: 0;
  left: -4px;
  rotate: (180deg);
}

#impact-purple {
  position: absolute;
  top: 100px;
  right: -4px;
}

#impact-magenta {
  position: absolute;
  top: 100px;
  right: -4px;
}

// Foundation Page
#foundation-magenta {
  position: absolute;
  top: 0px;
  left: 0px;
}

#foundation-orange {
  position: absolute;
  top: 40px;
  right: -4px;
}

.page-impact {
  #map-light {
    display: none;
  }

  #map-dark {
    display: block;
  }

  .connect-list {
    @each $connect in "connect-01", "connect-02", "connect-03", "connect-04" {
      ##{$connect} {
        content: url("../img/impact/#{$connect}.svg");
      }
    }
  }
}

.page-funding {
  .funding-list {
    @each $funding in "funding-01", "funding-02", "funding-03", "funding-04" {
      ##{$funding} {
        content: url("../img/funding/#{$funding}.svg");
      }
    }
  }

  #funding-orange {
    position: absolute;
    top: 132px;
    left: -4px;
  }

  // even out height on large
  @media (min-width: 992px) {
    .funding-box {
      min-height: 200px;
    }
  }
}

// Ambassadors
.page-ambassadors {
  #benefits-list {
    @each $benefits in "benefits-01", "benefits-02", "benefits-03",
    "benefits-04", "benefits-05", "benefits-06"

      {
      ##{$benefits} {
        content: url("../img/ambassadors/#{$benefits}.svg");
      }
    }
  }

  #eligibility-list {
    @each $eligibility in "eligibility-01", "eligibility-02", "eligibility-03",
    "eligibility-04", "eligibility-05"

      {
      ##{$eligibility} {
        content: url("../img/ambassadors/#{$eligibility}.svg");
      }
    }
  }

  // Button has link out arrow.
  .btn {
    padding: 0.75rem;
  }

  #container-scroll {
    height: 160px;
    position: relative;
    overflow: hidden;
    margin-top: 80px;
    margin-bottom: 64px;
  }

  .photobanner {
    position: absolute;
    top: 0px;
    left: 0px;
    overflow: hidden;
    white-space: nowrap;
    animation: bannermove 40s linear infinite;
  }

  .photobanner-bottom {
    top: 112px;
  }

  .photobanner img {
    margin: 0 0.5em;
  }

  @keyframes bannermove {
    0% {
      transform: translate(0, 0);
    }

    100% {
      transform: translate(-50%, 0);
    }
  }

  // Sliding Quotes
  #carouselSlidesOnly {
    height: 392px;
    margin-bottom: 40px;
  }

  @media (min-width: 992px) {
    #carouselSlidesOnly {
      height: 320px;
      margin-bottom: 104px;
    }
  }

  h6 {
    font-size: 1.25rem;
  }

  // Arrow links after text
  .btn-arrow::after {
    display: inline-block;
    content: url(../img/icons/arrow-right-purple.svg);
    vertical-align: middle;
    padding-left: 8px;
    transition: transform 0.3s ease-out;
  }

  .btn-arrow:hover {
    text-decoration: none;
    background: none !important;
    border: none;
  }

  .btn-arrow:hover::after {
    background-position: left 4px bottom 4px;
    transform: translateX(4px);
  }
}

.autoscroll-content {
  animation: autoscroll 15s linear infinite;
  white-space: nowrap;
  overflow: hidden;
  max-width: 300px;
}

// Community Page
#community-magenta {
  position: absolute;
  top: 0px;
  left: 0px;
}

#community-purple {
  position: absolute;
  top: 160px;
  right: 0px;
}

// Events page
.page-events {
  #event-hero-image {
    height: 100%;
    min-height: 209px;
    background: url(../img/events/event-hero1@2x.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }

  #events-orange {
    position: absolute;
    top: 0px;
    right: 0px;
  }

  .event-hero {
    color: $gray-100;

    p {
      font-weight: 500;
      font-size: 24px;
      line-height: 32px;
    }
  }

  .event-save-date {
    color: $white;
    font-weight: bold;
    font-size: 20px;
    line-height: 26px;
  }

  .event-small-gray {
    color: $gray-200;
  }

  // Button has link out arrow.
  .btn {
    padding: 0.75rem;
  }

  .event-card {
    max-width: 311px;
    margin: 32px auto;
    transition: all 0.35s ease-out;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;

    background-color: $card-bg;
    box-shadow: 0px 5px 40px $black;

    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 8px;

    font-size: 16px;
    line-height: 24px;
    color: $gray-200;

    .event-card-header {
      position: relative;
      height: 176px;
      background-size: contain !important;
      width: 100%;
      border-radius: 8px 8px 0 0;
    }

    .event-card-title {
      position: absolute;
      bottom: 32px;
      padding: 0 32px;
      color: $gray-100;

      font-weight: bold;
      font-size: 20px;
      line-height: 28px;
    }

    .event-card-body {
      padding: 32px;
    }

    .event-card-footer {
      padding: 0 32px 32px;
    }

    .event-card-footer .icon::before {
      height: 24px;
      width: 24px;
      content: "";
      margin-right: 8px;
      background-size: contain;
      background-repeat: no-repeat;
    }

    .icon-date::before {
      background: url(../img/events/event-date.svg);
    }

    .icon-location::before {
      background: url(../img/events/event-location.svg);
    }
  }

  //end event card

  @media (min-width: 992px) {
    .event-card {
      max-width: 347px;
      margin: 32px;
    }

    .event-card-header {
      height: 197px !important;
    }
  }

  a.event-card:hover {
    transform: translateY(-16px);
    text-decoration: none;
  }

  label {
    margin: 0;
    padding-left: 8px;
    color: $white;
  }

  .events-filter h6 {
    font-size: 16px;
  }

  .events-filter {
    height: 20px;
    width: 20px;
  }

  // .events-filter[type="checkbox"]:disabled::after {
  //   -webkit-filter: opacity(0.4);
  // }

  .events-filter[type="checkbox"]::before {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;

    content: "";
    background: $gray-900;

    border-radius: 4px;
    border-width: 2px;
    border-style: solid;
    border-color: $gray-400;
  }

  .events-filter[type="checkbox"]::after {
    position: relative;
    display: block;

    top: -20px;
    width: 20px;
    height: 20px;

    content: "";

    background-repeat: no-repeat;
    background-position: center;
    border-radius: 4px;
    border-width: 2px;
    border-style: solid;
    border-color: $gray-400;
  }

  .events-filter[type="checkbox"]:checked::before {
    background: $gray-900;
    border: none;
    border-radius: 0;
  }

  .events-filter[type="checkbox"]:checked::after {
    background-image: url(../img/events/event-check.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: $blue-purple-500;
    border-width: 2px;
    border-style: solid;
    border-color: $blue-purple-500;
    border-radius: 4px;
  }

  .events-filter[type="checkbox"]:not(:disabled):checked:hover::after {
    background-image: url(../img/events/event-check.svg);
    background-repeat: no-repeat;
    background-position: center;
    border-width: 2px;
    border-style: solid;
    border-color: $blue-purple-600;
    border-radius: 4px;
  }

  .events-filter[type="checkbox"]:not(:disabled):hover::before {
    background: $gray-900;
    border: none;
    border-radius: 0;
  }

  .events-filter[type="checkbox"]:not(:disabled):hover::after {
    background: $gray-900;
    border: none;
    border-width: 2px;
    border-style: solid;
    border-color: $blue-purple-600;
    border-radius: 4px;
  }
}

#find-us-on-platforms .card-deck {
  .card:nth-child(1) .card-footer {
    background-image: url(../img/cards/4col-light-blue-3.svg);
  }

  .card:nth-child(2) .card-footer {
    background-image: url(../img/cards/4col-purple-blue-2.svg);
  }

  .card:nth-child(3) .card-footer {
    background-image: url(../img/cards/4col-magenta-3.svg);
  }

  .card:nth-child(4) .card-footer {
    background-image: url(../img/cards/4col-green-2.svg);
  }

  .card:nth-child(5) .card-footer {
    background-image: url(../img/cards/4col-orange-yellow-2.svg);
  }

  .card:nth-child(6) .card-footer {
    background-image: url(../img/cards/4col-blue-purple.svg);
  }

  .card:nth-child(7) .card-footer {
    background-image: url(../img/cards/4col-yellow-2.svg);
  }

  .card:nth-child(8) .card-footer {
    background-image: url(../img/cards/4col-orange-2.svg);
  }

  .card {
    margin-bottom: 2.5rem;
  }
}

.page-faq {
  &::before {
    background-image: url(../img/backgrounds/faq-bg.svg);

    @include media-breakpoint-up(md) {
      background-size: contain;
    }
  }

  article {
    @include media-breakpoint-up(lg) {
      max-width: 704px;
      margin-left: auto;
      margin-right: auto;
    }
  }

  article h6:first-of-type {
    color: $green-500;
    margin-bottom: 1rem;
    margin-top: 2.5rem;
    font-size: 1.25rem;
    line-height: 26px;
    text-align: center;

    .hover_anchor {
      display: none;
    }

    @include media-breakpoint-up(lg) {
      margin-top: 6.5rem;
    }
  }

  article h1:first-of-type {
    font-size: 2.625rem;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 5rem;
    text-align: center;

    .hover_anchor {
      display: none;
    }

    @include media-breakpoint-up(lg) {
      font-size: 3.875rem;
      margin-bottom: 13rem;
    }
  }

  h2 {
    // These divide up sections of questions.
    margin-top: 13rem;
    font-size: 2rem;
    line-height: 2.375rem;
    text-align: center;
    font-weight: 700;
  }
}

.page-faq,
.mini-faq {
  // Includes mini-FAQ used on XRPL overview page

  .q-wrapper {
    background: $gray-800;
    border-radius: $border-radius-sm;
    padding: 2rem;
    padding-right: 3rem; // don't overlap chevron
    margin-bottom: 1.5rem; // this is enough space when a banner isn't active
    // margin-bottom: 3.5rem; // give space so anchor-fix doesn't block clicks
    position: relative;
    z-index: 5;
    width: 100%;
    transform: translateY(0%);

    p a {
      text-decoration: none;
      font-weight: 600;
      color: $link-hover-color;

      &:hover {
        text-decoration: underline;
      }
    }

    h4 {
      font-size: 1.25rem;
      line-height: 1.625rem;
      margin-top: 0;

      &::before {
        display: block;
        content: " ";
        margin-top: -40px;
        height: 40px;
        visibility: hidden;
        pointer-events: none;
      }

      >a {
        text-decoration: none;

        &:hover {
          text-decoration: underline;
          color: $white;
        }
      }

      @include media-breakpoint-down(md) {
        font-size: 1rem;
        line-height: 1.5rem;
      }

      .chevron {
        position: absolute;
        top: 40px;
        right: 2rem;
      }
    }
  }
}

.page-docs-index {
  &::before {
    // background-image: url(../../img/backgrounds/docs-splash.svg); // missing image.
    background-position-x: right;
  }

  .center-search {
    .input-group-text {
      height: 56px;
      padding: 0.75rem 0.75rem 0.75rem 1rem;
      line-height: 2rem;
    }

    .ds-input {
      height: 56px;
      padding: 0.75rem 1rem 0.75rem 0.5rem;
    }
  }

  #software-and-sdks .card-deck {
    .card:nth-child(1) .card-footer {
      background-image: url(../img/cards/4col-green.svg);
    }

    .card:nth-child(2) .card-footer {
      background-image: url(../img/cards/4col-light-blue.svg);
    }

    .card:nth-child(3) .card-footer {
      background-image: url(../img/cards/4col-orange.svg);
    }

    .card:nth-child(4) .card-footer {
      background-image: url(../img/cards/4col-yellow.svg);
    }
  }

  #doc-types .card-deck {
    .card:nth-child(1) .card-footer {
      background-image: url(../img/cards/4col-orange-yellow.svg);
    }

    .card:nth-child(2) .card-footer {
      background-image: url(../img/cards/4col-magenta.svg);
    }

    .card:nth-child(3) .card-footer {
      background-image: url(../img/cards/4col-blue-green.svg);
    }

    .card:nth-child(4) .card-footer {
      background-image: url(../img/cards/4col-light-blue-2.svg);
    }
  }

  #docs-hot-topic .longform {
    margin-top: 2.5rem;
  }
}

.page-docs-index,
.page-community {
  #community-heading {
    padding-top: 25rem;

    @media (max-width: 768px) {
      padding-top: 31rem;
    }

    .hero-title {
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
    }

    margin-top: 0px;

    @include media-breakpoint-up(lg) {
      padding-left: 0;

      .hero-title {
        min-width: max-content;
        bottom: -83%;
      }
    }

    // Floating images
    .parallax {
      position: absolute;
      -webkit-transition: all 0.1s ease;
      -moz-transition: all 0.1s ease;
      -ms-transition: all 0.1s ease;
      -o-transition: all 0.1s ease;
      transition: all 0.1s ease;
    }

    .one {
      top: 160px;
      left: 0%;
      opacity: 0.4;
    }

    .two {
      top: 130px;
      left: 56%;
      height: 320px;
      opacity: 0.4;
    }

    .three {
      top: 145px;
      right: 16%;
      height: 67px;
    }

    .four {
      top: 374px;
      left: 8%;
      width: 107px;
    }

    .five {
      top: 476px;
      width: 152px;
      height: 102px;
      right: 5%;
      opacity: 0.4;
    }
  }

  #run-a-network-node .card-deck {
    .card:nth-child(1) .card-footer {
      background-image: url(../img/cards/4col-yellow-2.svg);
    }

    .card:nth-child(2) .card-footer {
      background-image: url(../img/cards/4col-purple.svg);
    }

    .card:nth-child(3) .card-footer {
      background-image: url(../img/cards/4col-magenta-2.svg);
    }

    .card:nth-child(4) .card-footer {
      background-image: url(../img/cards/4col-light-green.svg);
    }
  }

  #run-a-network-node {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 104px;
    }

    .text-cards {
      grid-gap: 40px;

      h6::before {
        margin-top: 0;
        height: unset;
      }

      a {
        font-size: 1.25rem;
        line-height: 26px;
        color: #fff;
        font-weight: bold;

        &:hover {
          text-decoration: none;
          background: none !important;
        }
      }

      .btn-arrow::after {
        display: inline-block;
        content: url(../img/icons/arrow-right-purple.svg);
        vertical-align: middle;
        padding-left: 8px;
        -webkit-transition: transform 0.3s ease-out;
        -moz-transition: transform 0.3s ease-out;
        -ms-transition: transform 0.3s ease-out;
        -o-transition: transform 0.3s ease-out;
        transition: transform 0.3s ease-out;
      }
    }
  }

  #xrpl-grants {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 104px;
    }
  }

  #xrpl-blog {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 104px;
    }
  }

  #xrpl-events {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 104px;
    }
  }

  #xrpl-careers {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 104px;
    }
  }

  #xrpl-design-assets {
    padding-bottom: 5rem;

    @include media-breakpoint-up(md) {
      padding-top: 104px;
      padding-bottom: 208px;
    }
  }
}

.page-community {
  @each $platform in "github", "twitch", "stack-overflow", "twitter", "discord",
  "youtube", "devto"

    {
    #platform-#{$platform} {
      content: url("../img/logos/#{$platform}.svg");
    }
  }
}

.page-references {
  #refs-types .card-deck {
    .card:nth-child(1) .card-footer {
      background-image: url(../img/cards/3col-orange-2.svg);
    }

    .card:nth-child(2) .card-footer {
      background-image: url(../img/cards/3col-green-2.svg);
    }

    .card:nth-child(3) .card-footer {
      background-image: url(../img/cards/3col-magenta.svg);
    }
  }

  #xrpl-protocol .card-deck {
    .card:nth-child(1) .card-footer {
      background-image: url(../img/cards/4col-light-blue-4.svg);
    }

    .card:nth-child(2) .card-footer {
      background-image: url(../img/cards/4col-blue-green-2.svg);
    }

    .card:nth-child(3) .card-footer {
      background-image: url(../img/cards/4col-yellow-3.svg);
    }

    .card:nth-child(4) .card-footer {
      background-image: url(../img/cards/4col-purple-blue.svg);
    }
  }
}

.page-dev-tools {
  @each $tool,
  $card-graphic in ("xrp-explorer": "3-col-orange",
    "bithomp-explorer": "3-col-light-blue",
    "xrpscan": "3-col-pink",
    "token-list": "3-col-pink2",
    "websocket": "3-col-purple2",
    "rpc": "3-col-green",
    "technical-explorer": "3-col-purple-blue",
    "faucets": "3-col-pink2",
    "trasaction-sender": "3-col-light-blue2",
    "domain": "3-col-green-purple",
    "xrp-ledger": "3-col-dark-blue",
    "binary-visualizer": "3-col-purple-blue",
    "token-metadata-lookup": "3-col-pink-purple"

  ) {
    ##{$tool} {
      .card-footer {
        background-image: url("../img/cards/#{$card-graphic}.svg");
      }
    }
  }

  .nav-link {
    color: $gray-400;
    background-color: $gray-900;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom-color: $gray-600;
  }

  @media (max-width: 767.98px) {
    .nav-tabs {
      display: flex;
      list-style: none;
      margin-left: 0;
      padding-left: 0;
      justify-content: space-between;
    }

    .nav-item {
      display: inline-flex;
      width: auto;
      list-style: outside none none;
    }

    .nav-link {
      display: inline-flex;
      width: auto;
      padding: 1em 1em;
    }
  }

  .nav-link.active {
    border-bottom-color: $blue-purple-400;
    color: $white;
    font-weight: bold;
  }

  .nav-tabs {
    border-bottom: 1px solid $gray-600;
  }

  .btn {
    padding: 0.75rem;
  }
}

html.light {
  .page-dev-tools {
    .nav-link {
      background-color: $gray-100;
    }

    .nav-link.active {
      border-bottom-color: $blue-purple-400;
      color: $black;
      font-weight: bold;
    }

    .nav-link {
      color: $black;
    }

    #trasaction-sender .card-footer {
      background-image: url("../img/cards/3-col-light-blue-2.svg");
    }
  }
}
.page-rwa-tokenization{
  .developer-tools {
    padding:180px 0px;
  }
}

.page-rwa-tokenization,
.use-case-payments {

  .right-arrow-item::after {
    display: inline-block;
    content: url('../img/icons/arrow-right-purple.svg');
    position: relative;
    top: 1px;
    vertical-align: middle;
    padding-left: 8px;
    transition: transform 0.3s ease-out;
  }

  #events-orange {
    position: absolute;
    top: 0px;
    right: 0px;
  }

  .token-title {
    color: var(--black-black-0-white, #FFF);
    text-align: center;
    font-family: "Work Sans";
    font-size: 62px;
    font-style: normal;
    font-weight: 700;
    line-height: 70px;
    /* 112.903% */
    max-width: 720px;
    z-index: 1;
    @include media-breakpoint-down(md) {
      line-height: 48px;
      font-size: 42px;
      text-align: left;
    }

  }

    .token-title-container {
      gap: 32px;
      padding: 104px 40px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
  
      .button-container {
        display: flex;
        flex-wrap: wrap;
        gap: 32px;
        justify-content: center;
        align-items: center;
  
        .internal-link {
            color: #9a52ff;
            font-size: 16px;
            font-style: normal;
            font-weight: 700;
            text-decoration: none;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            background: none !important;
          }
  
        @media (max-width: 767px) {
          padding-bottom: 0px;
          gap: 16px;
          flex-direction: column;
          width: 100%;
          
          .btn-primary.p-12 {
            width: 100%;
          }
          
          .internal-link {
            width: 100%;
            text-align: center;
            white-space: normal;
          }
        }
  
        .btn-primary.p-12 {
          padding: 12px;
        }
      }
    }

  .token-video-container {
    padding: 104px 64px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 48px;
    max-width: 1200px;
    margin: 0 auto;
    @media (max-width: 767px) {
      padding-bottom: 0px;
    }
    .__button-container{
      margin-top: 16px;
    }
    .token-video {
      width: 50%;
      max-width: 602px;
      height: 372px;
    }

    .token-video-text-container {
      max-width: 520px;
      width: 50%;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      text-align: left;
      gap: 24px;

      p {
        color: var(--black-black-10-gray-200, #E0E0E1);
        font-family: "Work Sans";
        font-size: 24px;
        font-style: normal;
        font-weight: 400;
        line-height: 32px;
        margin: 0;
      }
    }

    @media (max-width: 1145px) {
      flex-direction: column;
      gap: 40px;
      padding: 80px 40px;
      max-width: 800px;
      
      .token-video {
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 16/9;
      }
      
      .token-video-text-container {
        width: 100%;
        max-width: 100%;
        align-items: flex-start;
        text-align: left;
        
        p {
          font-size: 22px;
          line-height: 30px;
        }
      }
    }

    @media (max-width: 767px) {
      padding: 60px 40px;
      gap: 32px;
      max-width: 100%;
      
      .token-video-text-container {
        p {
          font-size: 18px;
          line-height: 26px;
        }
      }
    }
  }

  .token-cards-wrapper {
    display: flex;
    justify-content: center;
  }

  .token-cards-container {
    display: flex;
    padding: 100px 40px;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    gap: 40px;
    max-width: 1280px;
    @media (max-width: 767px) {
      padding-bottom: 0px;
    }

    .cards-title-token {
      color: var(--black-black-0-white, #FFF);
      font-family: "Work Sans";
      font-size: 32px;
      font-style: normal;
      font-weight: 700;
      line-height: 38px;
      max-width: 780px;
      /* 118.75% */
    }

    .benefits-section {
      display: flex;
      flex-direction: column;
      align-items: center;
      font-family: 'Work Sans', sans-serif;
      overflow: hidden;
    }

    .section-title {
      font-size: 32px;
      color: var(--black-black-0-white, #fff);
      font-weight: 700;
      line-height: 38px;
      max-width: 776px;
      text-align: center;
      margin-bottom: 40px;
    }


    .benefits-container {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 40px;
      width: 100%;
      max-width: 1136px;
    }

    @media (max-width: 1399px) {
      .benefits-container {
        grid-template-columns: repeat(3, 1fr);
      }
    }
    
    @media (max-width: 1145px) {
      .section-title {
        font-size: 28px;
        line-height: 34px;
      }
      
      .benefits-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px;
      }
      
      .benefit-card {
        padding: 24px;
        min-height: 280px;
      }
    }
    
    @media (max-width: 767px) {
      .benefits-container {
        grid-template-columns: 1fr;
        gap: 24px;
      }
      
      .benefit-card {
        padding: 20px;
        min-height: 240px;
      }
    }

    .benefit-card {
      border-radius: 8px;
      background-color: var(--XRPL-Black-Black-80, #232325);
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      padding: 32px;
      min-height: 332px;
    }

    .benefit-icon {
      min-width: 40px;
      min-height: 40px;
      background-size: contain;
      background-repeat: no-repeat;
    }

    $icons: (
      'low-fees': '../img/tokenization/low-fees.png',
      'access': '../img/tokenization/cross-chain.png',
      'native-compliance': '../img/tokenization/native-compliance.png',
      'delegated-token-management': '../img/tokenization/delegated-token-management.png',
    );

  @each $name, $path in $icons {
    .benefit-icon.#{$name} {
      background-image: url(#{$path});
    }
  }

.benefit-title {
  color: var(--black-black-0-white, #fff);
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
  margin-top: -10px;
}

.benefit-description {
  color: var(--Black-Black-20, #e0e0e1);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-top: 16px;
}

@media (max-width: 991px) {
  .benefit-card {
    padding: 20px;
  }
}
}

.upcoming-events {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden; 
  padding: 100px 40px;
  max-width: 1200px;
  width: 100%;
  @media (max-width: 767px) {
    padding-bottom: 0px;
    padding-top: 0px;
  }
}

.upcoming-events__title {
  max-width: 630px;
  align-self: stretch;
  color: #fff;
  font: 700 32px/38px Work Sans, -apple-system, Roboto, Helvetica, sans-serif;
  margin-bottom: 64px;
  @media (max-width: 767px) {
   text-align: left;
  }
}

.upcoming-events__logo-container {
  display: flex;
  align-items: center;
  gap: 60px;
  justify-content: center;
  flex-wrap: wrap;
}

.token-events-wrapper {
  padding-top: 0px;
  display: flex;
  justify-content: center;
}

.company-logo {
  flex: 0 0 auto;
  width: 140px;
  aspect-ratio: var(--aspect-ratio);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 991px) {
  .upcoming-events__title {
    margin-bottom: 40px;
  }

  .upcoming-events {
    text-align: center;
  }

  .upcoming-events__logo-container {
    justify-content: center;
  }
}

.small-100 {
  @media (max-width: 575.98px) {
    /* Applies only on screens smaller than Bootstrap's `sm` breakpoint */
    width: 100%;
  }
}
.company-logo {
  cursor: pointer;
  flex: 0 0 auto;
  max-width: 140px;
  aspect-ratio: var(--aspect-ratio);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

  $company-logos: (
    'zoniqx': '../img/tokenization/zoniqx.png',
    'archax': '../img/tokenization/archax.png',
    'palisade': '../img/tokenization/palisade.png',
    'axiology': '../img/tokenization/axiology.png',
    'open-eden': '../img/tokenization/open-eden.png',
    'ondo': '../img/tokenization/ondo.png',
    'meld': '../img/tokenization/meld.png',
    'ripple-logo': '../img/tokenization/ripple-logo.png',
    'hidden-road': '../img/tokenization/hidden-road.png',
  );
  @each $name, $path in $company-logos {
    .company-logo.#{$name} {
      background-image: url(#{$path});
    }
  }
  
  .company-logo{
    max-height: 66px;
    max-width: 100px;
    width: 100%;
    height: 100%;
  }

/* Developer tools styles - shared between tokenization and payments pages */
.token-developer-tools-section,
.payments-integration-section {
  .developer-tools {
    font-family: 'Work Sans', sans-serif;
    color: #fff;
  }

  .developer-tools__header {
    margin-bottom: 64px;
  }

  .developer-tools__title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 24px;
  }

  .developer-tools__description {
    font-size: 16px;
    line-height: 24px;
  }

  .developer-tools__list {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .feature-item {
    a:hover {
      text-decoration: none;
    }
    margin-bottom: 16px;
    cursor: pointer;
  }

  .feature-item__content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    cursor: pointer;
  }

  .feature-item__content:hover .right-arrow-item::after {
    transform: translateX(4px);
    /* Moves the arrow 4px to the right on hover */
  }

  .feature-item__title {
    font-size: 16px;
    color: #e0e0e1;
    cursor: pointer;
  }

  .feature-item__icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
  }

  .feature-item__divider {
    height: 1px;
    opacity: 0.3;
    background-color: #fff;
  }



  .developer-tools__image {
    width: 110%;
    height: 124%;
    background-image: url("../img/tokenization/graphic.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .m-h-300 {
    min-height: 300px;
  }
  
  @media (max-width: 991px) {
    .developer-tools {
      padding: 50px 40px;
    }

    .developer-tools__header {
      margin-bottom: 40px;
    }
  }
}

.token-features-section {
  .rwa-tokenization {
    font-family: 'Work Sans', sans-serif;
    padding: 100px 40px;
    padding-top: 0px;
    color: #fff;
  }

  .container {
    max-width: 1200px;
    margin: 0 auto;
  }

  .rwa-header {
    text-align: start;
    margin-bottom: 40px;
  }

  .rwa-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 38px;
  }

  .cta-container {
    display: flex;
    justify-content: flex-start;
    gap: 24px;
  }

  .btn {
    font-size: 16px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 4px;
    text-decoration: none;
  }

  .btn-primary {
    background-color: #7919ff;
    color: #fff;
  }

  .btn-link {
    color: #9a52ff;
  }

  @media (max-width: 991px) {
    .auto-bridge {
      padding: 18px !important;
    }

    .rwa-tokenization {
      padding: 50px 20px;
    }

    .feature-grid {
      gap: 20px;
    }

    .cta-container {
      flex-direction: column;
      align-items: center;
    }
  }
  .feature-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
    margin-bottom: 20px;
  .feature-card {
    flex: 1 0 100%;
    max-width: 100%;
    margin-bottom: 20px;
    position: relative;

    @media (min-width: 768px) {
      flex: 1 0 calc(50% - 40px);
      max-width: calc(50% - 40px);
    }

    @media (min-width: 1200px) {
      flex: 1 0 calc(25% - 30px);
      max-width: calc(25% - 30px);
    }
  }
}

  .feature-card:hover .right-arrow-item::after {
    transform: translateX(4px);
    /* Moves the arrow 4px to the right on hover */
  }

  .feature-header {
    margin-bottom: 16px;
    position: relative;
  }

  .feature-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-size: 20px;
    font-weight: 700;
    line-height: 26px;
    color: #fff;
    width: 100%;
    flex-wrap: wrap;
    
    @media (max-width: 767px) {
      padding-right: 30px;
      flex-wrap: nowrap;
      justify-content: flex-start;
    }
    
    @media (min-width: 768px) and (max-width: 1199px) {
      flex-wrap: nowrap;
      padding-right: 30px;
      justify-content: flex-start;
    }
  }

  .feature-icon {
    width: 16px;
    height: 16px;
    margin-left: 8px;
  }

  .feature-description {
    font-size: 16px;
    line-height: 24px;
    color: #e0e0e1;
  }
}

.max-w-1150 {
  max-width: 1150px !important;
}

.custom-gap {
  justify-content: start !important;
}

.mt-16 {
  margin-top: 16px;
}

.com-card {
  min-width: auto !important;
  padding: 40px !important;
  height: fit-content;
  max-height: 388px !important;
}

.section-padding {
  padding: 100px 40px;
}

// Developer Resources Section - Clean, responsive styles with high specificity
.developer-resources-section {
  .bottom-cards-section.bug-bounty.section-padding {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 32px;
    max-width: 1200px;
    margin: 80px auto;
    padding: 0px;
    justify-content: center;
    
    @media (min-width: 768px) {
      gap: 40px;
      justify-content: space-between;
    }
    
    @media (max-width: 767px) {
      flex-direction: column;
      gap: 20px;
      margin: 40px auto;
      padding: 0px;
    }
    
    // High specificity to override contribute styles
    .com-card {
      flex: 1 !important;
      position: relative;
      margin: 0 !important;
      
      @media (min-width: 768px) {
        flex: 1 1 calc(50% - 20px);
        max-width: calc(50% - 20px);
        min-width: calc(50% - 20px);
        width: auto;
      }
      
      @media (max-width: 767px) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        margin-bottom: 0 !important;
        flex: none !important;
      }

      &.developer-spotlight {
        background-image: url(../img/community/bug-bounty-card-bg.png);
        background-position: top right;
        background-size: 169px 88px;
        background-repeat: no-repeat;
      }
      &.learn-stay-updated {
        background-image: url(../img/community/bug-bounty-card-bg-2.png);
        background-position: bottom right;
        background-size: contain;
        background-repeat: no-repeat;
        background-size: 136px 177px;
        @media (max-width: 767px) {
          background-image: url(../img/community/bug-bounty-card-bg-2-mobile.png);
        }
      }
      
      .card-content {
        display: flex;
        flex-direction: column;
        height: 100%;
        
        .card-description {
          flex-grow: 1;
          margin-bottom: 24px;
          max-width: 560px;
          @media (max-width: 767px) {
            margin-bottom: 20px;
          }
        }
        
        .card-links {
          margin-top: auto;
          
          @media (max-width: 767px) {
            margin-top: 16px;
            
            .com-card-link {
              display: block;
              margin-bottom: 12px;
              
              &:last-child {
                margin-bottom: 0;
              }
            }
          }
        }
      }
    }
  }
  
  // Single card layout - remove gap and control spacing precisely
  &.single-card .bottom-cards-section.bug-bounty.section-padding {
    gap: 0 !important;
  }
  &.single-card {
    .bug-bounty-card-bg-2 {
      @media (max-width: 767px) {
        content: url("../img/community/bug-bounty-card-bg-2-mobile.png");
      }
    }

    .com-card {
      font-size: 24px;
      max-height: 288px !important;

      @media (max-width: 768px) {
        min-height: 493px !important;
      }
      @media (min-width: 768px) {
        flex: 1 1 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
      }

    .bottom-right-img.bug-bounty-card-bg-2 {
      height: 714px ;
      width: auto;
      object-fit: cover;
      object-position: right bottom;
    }
    
    .card-content {
      gap: 0;
      
      .card-title {
        margin-bottom: 24px;
        margin-top: 0;
      }
      
      .card-description {
        margin-bottom: 24px;
        margin-top: 0;
        flex-grow: 0;
        padding: 0;
      }
      
      .card-links {
        margin-top: 0;
        margin-bottom: 0;
      }
    }
    }
  }
}

.token-utility-section {
  padding: 100px 40px;
  @media (max-width: 767px) {
    padding-bottom: 0px;
  }
  .section-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 38px;
    text-align: start;
    margin-bottom: 64px;
    color: $white;
  }

  .utility-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;

    @media (max-width: 1199px) {
      grid-template-columns: repeat(2, 1fr);
    }

    @media (max-width: 767px) {
      grid-template-columns: 1fr;
    }
  }

  .utility-card {

    .utility-title {
      font-size: 20px;
      font-weight: 700;
      line-height: 26px;
      margin-bottom: 16px;
      color: $white;
    }

    .utility-description {
      font-size: 16px;
      line-height: 24px;
      color: $gray-200;

      a {
        color: $blue-purple-400;
        text-decoration: none;

        &:hover {
          text-decoration: underline;
        }
      }
    }
  }
}
}
